package com.ruoyi.project.mahjong.mapper;

import java.util.List;
import com.ruoyi.project.mahjong.domain.TWork;
import com.ruoyi.project.mahjong.domain.vo.UpgradReportVo;
import com.ruoyi.project.mahjong.domain.vo.WorkRecordVo;
import org.apache.ibatis.annotations.Param;

/**
 * 交班记录Mapper接口
 *
 * @author ruoyi
 * @date 2023-11-15
 */
public interface TWorkMapper
{
    /**
     * 查询交班记录
     *
     * @param id 交班记录ID
     * @return 交班记录
     */
    public TWork selectTWorkById(Long id);

    /**
     * 查询交班记录列表
     *
     * @param tWork 交班记录
     * @return 交班记录集合
     */
    public List<TWork> selectTWorkList(TWork tWork);

    /**
     * 新增交班记录
     *
     * @param tWork 交班记录
     * @return 结果
     */
    public int insertTWork(TWork tWork);

    /**
     * 修改交班记录
     *
     * @param tWork 交班记录
     * @return 结果
     */
    public int updateTWork(TWork tWork);

    /**
     * 删除交班记录
     *
     * @param id 交班记录ID
     * @return 结果
     */
    public int deleteTWorkById(Long id);

    /**
     * 批量删除交班记录
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteTWorkByIds(Long[] ids);

    TWork insertTWorkReturnId(TWork tWork);

    List<WorkRecordVo> selectWorkRecordList(@Param("startTime") String startTime,@Param("endTime") String endTime, @Param("shopId")Long shopId,@Param("staffName")String staffName);

    List<TWork> checkTWork(@Param("userId")Long userId, @Param("shopId") Long shopId);

    List<UpgradReportVo> selectReprot(@Param("startTime")String startTime, @Param("endTime")String endTime, @Param("shopId")Long shopId);
}
